package com.infore.qualityControl.service;

import java.util.List;
import java.util.Map;

import com.infore.qualityControl.bo.QualityParamSelectBo;
import com.infore.qualityControl.bo.QualityParamSetBo;
import com.infore.qualityControl.select.util.PageObject;
import com.infore.qualityControl.util.ResultEntity;

public interface IQualityControlSetService {
	/** 获取日质控当前使用24小时质控参数信息 **/
	ResultEntity currentDayQualityControlParam(QualityParamSelectBo qualityParamSelectBo);
	
	/** 获取日质控历史设置24小时质控参数信息 **/
	ResultEntity historyDayQualityControlParam(QualityParamSelectBo qualityParamSelectBo, PageObject pageObject);

	/** 设置日质控当前使用24小时质控参数信息 **/
	ResultEntity editorCurrentDayQualityControlParam(List<QualityParamSetBo> qualityParamSetBoList);
	
	/** 审核日质控当前使用24小时质控参数信息 **/
	ResultEntity auditCurrentDayQualityControlParam(String id);

	/** 获取周质控当前使用24小时质控参数信息 **/
	ResultEntity currentWeekQualityControlParam(QualityParamSelectBo qualityParamSelectBo);
	
	/** 获取周质控历史质控参数信息 **/
	ResultEntity historyWeekQualityControlParam(QualityParamSelectBo qualityParamSelectBo, PageObject pageObject);
	
	/** 设置周质控当前使用周质控参数信息 **/
	ResultEntity editorCurrentWeekQualityControlParam(List<QualityParamSetBo> qualityParamSetBoList);
	
	/** 审核周质控当前使用周质控参数信息 **/
	ResultEntity auditCurrentWeekQualityControlParam(String id);

	/** 获取月质控多点线性核查质控参数信息 **/
	ResultEntity currentMonthQualityControlMultipointParam(QualityParamSelectBo qualityParamSelectBo);
	
	/** 获取历史月质控多点线性核查质控参数信息 **/
	ResultEntity historyMonthQualityControlMultipointParam(QualityParamSelectBo qualityParamSelectBo, PageObject pageObject);
	
	/** 获取月质控多点线性核查质控设置参数内零点核查信息 **/
	ResultEntity monthQualityControlMultipointParamZeroDrift(QualityParamSelectBo qualityParamSelectBo);
	
	/** 获取月质控多点线性核查质控设置参数内跨度核查信息 **/
	ResultEntity monthQualityControlMultipointParamSpanDrift(QualityParamSelectBo qualityParamSelectBo);
	
	/** 设置月质控多点线性核查质控参数信息 **/
	ResultEntity editorCurrentMonthQualityControlMultipointParam(List<QualityParamSetBo> qualityParamSetBoList);
	
	/** 审核月质控多点线性核查质控参数信息 **/
	ResultEntity auditCurrentMonthQualityControlMultipointParam(String id);

	/** 获取月质控集成干预核查质控参数信息 **/
	ResultEntity currentMonthQualityControlIntegratedParam(QualityParamSelectBo qualityParamSelectBo);
	
	/** 获取历史月质控集成干预核查质控参数信息 **/
	ResultEntity historyMonthQualityControlIntegratedParam(QualityParamSelectBo qualityParamSelectBo, PageObject pageObject);
	
	/** 设置月质控集成干预核查质控参数信息 **/
	ResultEntity editorCurrentMonthQualityControlIntegratedParam(List<QualityParamSetBo> qualityParamSetBoList);
	
	/** 审核月质控集成干预核查质控参数信息 **/
	ResultEntity auditCurrentMonthQualityControlIntegratedParam(String id);

	/** 获取月质控实际水样对比质控参数信息 **/
	ResultEntity currentMonthQualityControlRealWaterParam(QualityParamSelectBo qualityParamSelectBo);
	
	/** 设置月质控实际水样对比质控参数信息 **/
	ResultEntity editorCurrentMonthQualityControlRealWaterParam(List<QualityParamSetBo> qualityParamSetBoList);
	
	/** 审核月质控实际水样对比质控参数信息 **/
	ResultEntity auditCurrentMonthQualityControlRealWaterParam(String id);

	/** 获取月质控加标回收率质控参数信息 **/
	ResultEntity currentMonthQualityControlRecoveryParam(QualityParamSelectBo qualityParamSelectBo);
	
	/** 获取历史月质控加标回收率质控参数信息 **/
	ResultEntity historyMonthQualityControlRecoveryParam(QualityParamSelectBo qualityParamSelectBo, PageObject pageObject);
	
	/** 设置月质控加标回收率质控参数信息 **/
	ResultEntity editorCurrentMonthQualityControlRecoveryParam(List<QualityParamSetBo> qualityParamSetBoList);
	
	/** 审核月质控加标回收率质控参数信息 **/
	ResultEntity auditCurrentMonthQualityControlRecoveryParam(String id);
	
	/** 获取月质控标样核查质控参数信息 **/
	ResultEntity currentMonthQualityControlStandardCheckParam(QualityParamSelectBo qualityParamSelectBo);
	
	/** 获取历史月质控标样核查质控参数信息 **/
	ResultEntity historyMonthQualityControlStandardCheckParam(QualityParamSelectBo qualityParamSelectBo, PageObject pageObject);
	
	/** 设置月质控标样核查质控参数信息 **/
	ResultEntity editorCurrentMonthQualityControlStandardCheckParam(List<QualityParamSetBo> qualityParamSetBoList);
	
	/** 审核月质控标样核查质控参数信息 **/
	ResultEntity auditCurrentMonthQualityControlStandardCheckParam(String id);
	
	/** 获取设备的设置参数信息 **/
	ResultEntity getEquipmentParameter(QualityParamSelectBo qualityParamSelectBo);
	
	/** 设置设备的参数信息 **/
	ResultEntity editorEquipmentParameter(String parameterId, String parameterValue);
	
	/** 获取站点的当前水质数据 **/
	ResultEntity getStationCurrentWaterQualityData(String stationCode);
	
	/** 获取周质控、多点线性、集成干预、加标回收、标样核查历史一栏结论信息 **/
	ResultEntity qualityControlConclusion(QualityParamSelectBo qualityParamSelectBo);
	
	/** 获取日质控、周质控、多点线性、集成干预、实际水样对比、加标回收、标样核查温馨提示信息 **/
	ResultEntity qualityControlTips(QualityParamSelectBo qualityParamSelectBo);
	
	/** ------ 以下接口不对外、仅限于生成质控数据使用 ------- **/
	/** 获取日质控当前使用24小时所有站点的最新质控参数信息 **/
	List<Map<String, Map<String, Object>>> currentAllDayQualityControlParam();
	
	/** 获取周质控当前使用所有站点的最新质控参数信息 **/
	List<Map<String, Map<String, Object>>> currentWeekQualityControlParam();
	
	/** 获取月质控加标回收率所有站点的最新质控参数信息 **/
	List<Map<String, Map<String, Object>>> currentMonthQualityControlRecoveryParam();
	
	/** 获取月质控标样核查所有站点的最新质控参数信息 **/
	List<Map<String, Map<String, Object>>> currentMonthQualityControlStandardCheckParam();
}
